const AUTH = require('../../utils/auth')
const API = require('../../http/api')

Page({
  data: {
    //默认显示登录授权按钮
    userInfoType: 1
  },
  onLoad() {

  },

  // 点击去金额页面
  toJinE() {
    wx.navigateTo({
      url: '/pages/jinE/jinE',
    })
  },
  // 点击去冻结页面
  toDongJie() {
    wx.navigateTo({
      url: '/pages/dongJie/dongJie',
    })
  },

  // 点击去成长值
  tochengzhangzhi() {
    wx.navigateTo({
      url: '/pages/chengZhangZhi/chengZhangZhi',
    })
  },
  // 点击去积分明细
  toJiFen() {
    wx.navigateTo({
      url: '/pages/jiFen/jiFen',
    })
  },
  // 点击去订单列表
  todingDanList() {
    wx.navigateTo({
      url: '/pages/dingDanList/dingDanList',
    })
  },

  // 点击去GPS订单
  toGPSdingDan() {
    wx.navigateTo({
      url: '/pages/GPSdingDan/GPSdingDan',
    })
  },
  // 点击去回收订单
  tohuiShouDingDan() {
    wx.navigateTo({
      url: '/pages/huiShouDingDan/huiShouDingDan',
    })
  },
  // 去优惠买单
  toyouHuiMaiDan() {
    wx.navigateTo({
      url: '/pages/youHuiMaiDan/youHuiMaiDan',
    })
  },

  // 去发票申请
  tofaPiaoShenQing() {
    wx.navigateTo({
      url: '/pages/faPiaoShenQing/faPiaoShenQing',
    })
  },
  // 去开票记录
  tokaiPiaoJiLu() {
    wx.navigateTo({
      url: '/pages/kaiPiaoJiLu/kaiPiaoJiLu',
    })
  },
  // 去签到
  toqianDao() {
    wx.navigateTo({
      url: '/pages/qianDao/qianDao',
    })
  },


  // 去优惠券
  toYouHuiQuan() {
    wx.switchTab({
      url: '/pages/discounts/discounts',
    })
  },

  // 去积分兑换
  tojiFenDuiHuan() {
    wx.navigateTo({
      url: '/pages/jiFenDuiHuan/jiFenDuiHuan',
    })
  },
  // 去积分兑换成长值
  tochengZhangZhi() {
    wx.navigateTo({
      url: '/pages/jiFenChengZhangZhi/jiFenChengZhangZhi',
    })
  },

  // 去个人中心
  togeRenXinXi() {
    wx.navigateTo({
      url: '/pages/geRenXinXi/geRenXinXi',
    })
  },

  // 去设置
  tosheZhi() {
    wx.navigateTo({
      url: '/pages/sheZhi/sheZhi',
    })
  },

  onShow() {
    //先判断用户是否登录，登录后再获取用户信息
    AUTH.hashCheckedLogined().then(logined => {

      if (!logined) {
        //先登录，再获取用户信息
        AUTH.autoLoginAndRegister().then(res => {
          //进入就要读取用户详细信息方法
          this.getUserInfo()
        })
      } else {
        //进入就要读取用户详细信息方法

        this.getUserInfo()

      }

    })


  },
  //获取用户详细信息方法
  async getUserInfo() {
    //获取token
    const token = wx.getStorageSync('token')
    //调用用户详细信息接口
    const res = await API.getUserDetail(token)

    console.log('用户详细信息：：', res)

    //渲染用户信息的对象
    let _data = {}
    _data.userInfo = res.data.base


    //  nick：用户昵称   
    // avataUrl:用户图像地址
    if (res.data.base.nick && res.data.base.avatarUrl) {

      this.setData({
        userInfoType: 2
      })
    } else {
      this.setData({
        userInfoType: 1
      })
    }


    this.setData(_data)

  },
  //通过微信小程序api打开获取信息信息的弹框
  openUserInfoWindow() {
    const _this = this;
    wx.getUserProfile({
      lang: 'zh_CN',
      desc: '授权允许用户获取微信信息',
      success(res) {
        console.log('终于获取到用户信息：', res)
        //调用一个更新方法，将获取的用户信息保存到公司后台数据库
        _this.updateUserInfo(res.userInfo)
      }
    })
  },
  //更新用户信息的方法
  async updateUserInfo(userinfo) {
    //{ city:城市,nick:昵称,province:省份,avatarUrl:头像,gender:性别,token:token }

    const {
      avatarUrl,
      city,
      gender,
      nickName,
      province
    } = userinfo
    const token = wx.getStorageSync('token')

    const _data = {
      city: city,
      nick: nickName,
      province: province,
      avatarUrl: avatarUrl,
      gender: gender,
      token: token
    }



    //调用后台用户更新接口更新用户信息
    const res = await API.updateUserInfoApi(_data)

    //再调用获取用户信息方法，重新拉取用户信息
    this.getUserInfo()

  }
})